Crossing network utilizing satisfaction density profile

ABSTRACT

A crossing network that matches buy and sell orders based upon a satisfaction and quantity profile is disclosed. The crossing network includes a number of trader terminals that can be used for entering order. The orders are entered in the form of a satisfaction density profile that represents a degree of satisfaction to trade a particular instrument at various (price, quantity) combinations. Typically, each order is either a buy order or a sell order. The trader terminals are coupled to a matching controller computer. The matching controller computer can receive as input the satisfaction density profiles entered at each one of the trading terminals. The matching controller computer matches orders (as represented by each trader&#39;s satisfaction density profile) so that each trader is assured that the overall outcome of the process (in terms of average price and size of fill) has maximized the mutual satisfaction of all traders. Typically, the matching process is anonymous. The matching process can be continuous or a batch process, or a hybrid of the two. Unmatched satisfaction density profiles can be used to provide spread and pricing information. Factors other than price and quantity also may be used to determine the degree of satisfaction. Optionally, priority may be given to certain profiles in the matching process to accommodate stock exchange rules, for example, requiring that priority be given to orders exhibiting the best price, regardless of size or any other consideration. The crossing network has utility both in the securities industry and for non-securities industry applications.

This application is a 371 of PCT/US96/07265 filed Apr. 26, 1996 which isa continuation of Ser. No. 08/571,328 filed Dec. 12, 1995 now U.S. Pat.No. 5,845,266.

FIELD OF INVENTION

The present invention is directed to an automated crossing network (alsoknown as a matching system) for trading instruments, and in particular,a continuous crossing network that matches buy and sell orders basedupon a satisfaction and size profile and that can output price discoveryinformation.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor patent disclosure as it appears in the U.S. Patent and TrademarkOffice, patent file or records, but otherwise reserves all copyrightrights whatsoever.

BACKGROUND OF THE INVENTION

Traditionally, traders and investors who desired to buy or sellsecurities placed orders with brokers who traded on the floor oforganized stock exchanges, such as the New York Stock Exchange or theNASDAQ market. Traders and investors, particularly institutionalinvestors, are increasingly balking at the high cost of trading onorganized exchanges and in the OTC (Over-The-Counter) market. Discontentwith the expense of using intermediaries and the cost of market impacthas contributed to the development of the electronic fourth market forcrossing trades. See "Reshaping the Equity Markets, A Guide for the1990s" by Robert A. Schwartz, Harper Business, 1991, especially at pp.93-95.

Various companies and exchanges operate computerized crossing networks,also called anonymous matching systems. By way of example, crossingnetworks used in connection with the trading of trading instruments aredisclosed in U.S. Pat. No. 4,412,287, which discloses an automated stockexchange in which a computer matches buy and sell orders for a varietyof stocks; U.S. Pat. No. 3,573,747, which discloses an anonymous tradingsystem for selling fungible properties between subscribers to thesystem; U.S. Pat. No. 3,581,072, which discloses the use of a specialpurpose digital computer for matching orders and establishing marketprices in an auction market for fungible goods; U.S. Pat. No. 4,674,044,which discloses an automated securities trading system; U.S. Pat. No.5,136,501, which discloses an anonymous matching system for effectuatingtrades through automatic matching in which buyers and sellers who arewilling to trade with one another based on specified criteria, such asprice, quantity and credit, may automatically trade when matching eventsoccur satisfying these criteria; and U.S. Pat. No. 5,101,353, whichdiscloses an automated system for providing liquidity to securitiesmarkets in which orders are entered by the system and executed in realtime either internally between system users or externally with stockexchanges and markets.

Crossing networks have a number of advantages, including: (a) tradersneed not search for a contraparty; and (b) anonymity is preserved.

Existing facilities for crossing trades include Instinet's CrossingNetwork and POSIT (Portfolio System for Institutional Trading) which isowned by ITG, Inc. The Instinet Crossing Network has an equities tradingservice to match buyers and sellers anonymously at set times. Computerspair buyers with sellers on a time priority basis. Trades are executedat the closing price for exchange-listed issues, and at the midpoint ofthe inside market (best bid and ask) for OTC issues.

POSIT, for example, enables large investors to trade baskets of stocksamong themselves. The orders are sent to a central computer where theyare electronically matched with other orders. Unlike Instinet's CrossingNetwork, POSIT crosses are done at discreet times during the day. Theprices are obtained from those quoted on the exchanges, a practice knownas "parasitic pricing." See "Reshaping the Equity Markets, A Guide forthe 1990s" cited above.

Instinet, owned by Reuters, also operates an electronic trading systemthat facilitates the negotiation of trades between institutionalinvestors and brokers. Instinet allows parties to trade anonymously,entering bids and offers electronically. Instinet subscribers canrespond to an "order" entered into the system either by matching adisplayed price or by making a counter bid car offer that is transmittedelectronically to the counter parties. The trades that result from thesenegotiations become public information only when they are executed. Thisprocedure provides an alternative to the direct human-to-humannegotiation of orders in the upstairs market or on the trading floors.Instinet provides a limit order book for over-the-counter (OTC)securities and listed securities and also provides inside quotes forexchange listed securities for the seven U.S. exchanges on which stockscan be traded and for NASDAQ listed securities.

Many crossing networks function independently of existing stockexchanges. However, some crossing networks are operated by stockexchanges.

For example, the Market Match Exchange ("MMX") is operated by theChicago Stock Exchange. All matched orders are executed at a random timewithin a predetermined ten minute window at the market price at suchtime. The market price is calculated based upon the midpoint of thespread of a particular issue. Rather than matching orders on the basisof time priority, the MMX system uses liquidity fees and liquiditycredits to determine the level of priority for order matching. Thoseusers willing to pay the highest liquidity fee have the highestexecution priority. See 59 F.R. 5451 (Feb. 4, 1994).

Crossing networks that automatically match buy and sell orders oftenconcentrate trading at a single point of time, and can be called a batchprocess matching system. There is a need, however, for an anonymouscrossing network that continuously, and in real-time, satisfies thebuying and selling desires of an arbitrary number of marketparticipants.

A major problem encountered in the design of crossing networks is thatof determining how to match buyers and sellers. Existing approaches tothis problem include:

Take-out strategies, where overlapping bids and offers are matched atthe midpoint of the overlapped bid and ask prices, with priority givento buyers and sellers in order of price. This assumes a significantquantity of non-disclosed orders in the system; otherwise, there wouldbe no incentive for overlap, and take-out would start at the disclosedbest bid/offer prices, just like the Instinet book.

Single price auction strategies, where a single, size-weighted averageprice is computed from overlapping bid and offer prices, and everyone isfilled at that price. Again, traders would have to be confident of asignificant number of non-disclosed orders in the system to have theincentive to enter orders at a better price than the best disclosedprice.

Premium strategies (as in the Chicago MMX system), where bids and offershave an associated positive or negative premium, and crossing takesplace at the midpoint of market spread or at the minimum necessarypremium differential from the midpoint, with priority given in order ofpremium. Here, the premium-based priority in matching provides theincentive for offering higher premiums.

Each of the above approaches is a batch process that relies upon ad hocrules of competition among a relatively small set of discrete orders asbeing the means of arbitrating the crossing network participants'buy/sell entries.

In the real world of trading, orders to buy or sell can enter the marketat any time, and discrete orders often represent only an approximate andpartial expression of the order fill that would satisfy the trader. Forinstitutional traders in particular, an individual order seldomrepresents the full desired fill size, and the trader must then employmultiple orders at different prices (and generally in different markets)to achieve his ultimate fill.

Typically, existing crossing networks allow discrete buy or sell ordersto be entered, e.g., "sell 10,000 IBM at 64." However, as stated abovemany traders, particularly institutional traders, wish to deal inbaskets of securities, so that, for example, a portfolio is as far aspossible, "balanced." Existing crossing networks do not easily allowtraders to enter combinations of orders, such as "sell 10,000 IBM at 64only if I can buy 20,000 DEC at 32". Furthermore, existing crossingnetworks do not allow traders to enter combinations of orders, such as"sell 10,000 IBM at 64 or sell 100,000 IBM at 63." Traders often havetrading strategies such as, for example, "buy 3,000 IBM at 63, but if Ican buy 5,000, I would be prepared to pay 63 and 1/2", that cannot behandled by existing crossing networks.

Given the above limitations of conventional crossing networks, a moresatisfactory approach to the overall problem of continuously satisfyingthe buying and selling desires of an arbitrary number of marketparticipants is needed. Furthermore, a crossing network is needed thatwill guarantee mathematical optimality of the matching process, so thateach participant is assured that the overall outcome of the process (interms of the price and size of all fills) has maximized the jointsatisfaction of all participants.

Price discovery is an important market feature, but in many markets, isoften not explicit. The call market opening procedure used on the NYSE,for example, enables determination of an opening price. Further,consolidation of the public order flow on the trading floor of the NYSEgives the exchange specialists a more comprehensive knowledge ofbuy/sell propensities in the broader market for an issue. The OTC marketdoes not have an explicit price discovery mechanism, such as the callmarket opening procedure used by the NYSE. OTC dealers sense thepublic's buy/sell propensities by posting quotes and observing themarket's response. Moreover, existing crossing networks use parasiticpricing methods, and therefore depend on the existence of another marketin the same instruments.

SUMMARY OF THE INVENTION

The present invention is directed to a computerized crossing networkthat allows traders to input as orders a satisfaction density profileand maximum size limit which at once characterizes the trader's degreeof satisfaction to trade at any and all prices and sizes, up to theaggregate (or size) limit, and that matches orders (as represented byeach trader's satisfaction density profile) so that each trader isassured that the overall outcome of the process (in terms of averageprice and size of fill) has maximized the mutual satisfaction of alltraders.

The satisfaction density profile is a two-dimensional grid or matrix(which could also be represented as a two-dimensional graph or inanother two-dimensional format), one dimension being price and thesecond dimension being size of transaction, that as a wholecharacterizes the trader's degree of satisfaction for a transaction ateach (price, size) coordinate. Each element of the satisfaction densityprofile, called a satisfaction density value, indicates the trader'sdegree of satisfaction to trade that size order at that price. In therepresentative embodiment, each satisfaction density value is a numberbetween zero and one, with zero representing no satisfaction (i.e., willunder no circumstances trade that quantity at that price) and onerepresenting total satisfaction.

Each trader can input one or more satisfaction density profiles. In therepresentative embodiment, each satisfaction density profile can berepresented and input as a graph of at least two dimensions, such as,for example, as a temperature grid or two dimensional matrix.

Once the satisfaction density profile is complete, the trader causes thesatisfaction density profile to be transmitted to a central matchingcontroller ("CMC"), which anonymously matches buy and sell orders asdiscussed below.

For the purpose of explanation, assume a batch process in which multipletraders enter satisfaction density profiles that represent either buy orsell orders for a particular stock. Upon transmission of thesatisfaction density profiles to the CMC, the CMC will cause buyprofiles to be stored in a buy profile database and sell profiles to bestored in a sell profile database. The CMC will then calculate, forevery buy/sell profile pair, a mutual satisfaction cross productprofile. The mutual satisfaction cross product profile represents thedegree to which that buy/sell pair can satisfy each other at each gridvalue of price and size. Next, the individual grid values of the mutualsatisfaction cross products for all buy/sell combinations are ranked inorder, starting with the highest value of mutual satisfaction. Thebuy/sell orders represented by the ranked grid values of the mutualsatisfaction cross products are then matched in order, and matchingtrades are aggregated by the CMC system. The matching process thencontinues clown the ranked list.

The present invention can easily handle trades of baskets of securities.For example, in the representative embodiment, if a trader wishes tosimultaneously both sell IBM and buy DEC, the trader would create a sellsatisfaction density profile representing the IBM part of thetransaction and a buy satisfaction density profile representing the DECpart of the transaction, and indicate that these profiles are to belinked together. The CMC will then link these two satisfaction densityprofiles. This linking process can be accomplished, for example, byutilizing a connection matrix and performing matrix manipulation on thetwo profiles. It will be apparent that other, more complex, linkedtrades can be accomplished in the same manner.

The present invention can be operated as a batch crossing network, whereorders are matched at set times. Alternatively, the present inventioncan be operated as a continuous crossing network by treating each newsatisfaction density profile that is entered as a triggering event thatcauses a new round of computation as described above.

The present invention also allows traders to create and inputsatisfaction density profiles, where the individual satisfaction densityprofile values entered are based upon external variables (e.g., for debtinstruments, based upon current interest rate, coupon rate, quality ofissuer, etc.) and variables other than price and quantity.

It will be apparent that, in contrast to the typical trading situationwhere each party will know the identity of the other potential tradingparties, the present invention preserves the anonymity of each of thetrading parties. According to the representative embodiment of thepresent invention, each trader enters orders (in the form ofsatisfaction density profiles) at a trader terminal. Each traderterminal is coupled (directly or indirectly) to the CMC, and may besituated at a location remote to the CMC. Although the CMC can associateeach satisfaction density profile with each trader, the other tradersare not informed by the present invention of the identity of otherparties or potential parties. (Of course, if desired, the presentinvention could easily be adapted so that each trader is informed by theCMC of the identity of or information about other traders who entersatisfaction density profiles.) Thus, this technology (e.g., theoperation of the CMC of the present invention, in combination with thecommunication links to the trader terminals) preserves the anonymity ofeach of the traders utilizing the present invention.

Additionally, due to the detail, structure and format of information (inthe form of the unique satisfaction density profiles of the presentinvention) that is electronically communicated from the trader terminalto the CMC with respect to each order, the CMC is able to performcalculations, match orders and provide market information in a way that,prior to the present invention, was unavailable in computerized crossingnetworks.

The present invention provides a richer means of price discovery than isavailable in any existing market structure, including exchanges. Insteady-state operation, where all feasible matches have been performedand the system is awaiting the next profile input, there will exist agroup of unfilled buy satisfaction density profiles and a group ofunfilled sell satisfaction density profiles, with no overlap between thetwo groups (otherwise a match would be performed). The two-dimensionalprice/size region between these groups is denoted the "spread region,"and depicts, at each value of size, the spread between the highestnon-zero buy satisfaction profile price and the lowest non-zero sellsatisfaction profile price. This depiction of the aggregate of unfilledsatisfaction profiles is a significant generalization of the marketquotes currently provided by exchanges and market makers, and obviatesthe need for parasitic pricing inherent in other crossing networks. Italso provides substantially greater price discovery across the fullrange of trade sizes than is contained in the current quotations ofbest-bid and best-offering prices and corresponding sizes.

The present invention has features to permit operation in accordancewith certain stock exchange rules. For example, some exchanges requirepriority to be given to orders exhibiting the best price, regardless ofother factors. Accordingly, in such cases, the present invention cancalculate a tentative allocation. Before making the allocation, the CMCwill check to ascertain if there exist any contra profiles that, inaccordance with exchange rules, must be executed prior to the tentativeallocation.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a representative system operating accordingto the present invention.

FIG. 2 is an example satisfaction density profile for a buy order.

FIGS. 3A to 3D are example satisfaction density profiles in contour plotformat.

FIG. 4 is an example interface window, used to set parameters for andenable input of satisfaction density profiles.

FIG. 5 is a load pattern interface window, used to load parameterizedsatisfaction density profile templates.

FIG. 6 is an example screen display showing an interface window and asatisfaction density profile for a sell order.

FIG. 7 is an example buy satisfaction density profile displayed as atemperature graph.

FIG. 8 is a description of the matching process in flow chart format.

FIGS. 9A and 9B illustrating typical displays of aggregate densityprofiles.

FIGS. 10A to 10C are example mutual satisfaction cross products,represented as contour graphs.

FIG. 11 illustrates an example procedure, in flow chart form, formodifying the present invention to comply with stock exchange rules in acontinuous market case.

DETAILED DESCRIPTION

The present invention is described below in the context of tradingequity securities. However, the invention is not so limited and can beeasily adapted to allow the trading of other liquid assets such asfutures, derivatives, options, bonds, currencies, airline tickets,concert tickets, computer chips, oil, natural gas and the like.Accordingly, where the context permits, the terms "securities", "stock","shares" and "instruments" when used herein includes all items that canbe traded, such as, for example, futures, derivatives, options, bonds,currencies, computer chips, airline tickets and concert tickets. Theterms "buy" and "sell" include, where appropriate, bid and offer, etc.

Intended users of the representative embodiment system of this inventionare typically investors, such as institutional investors (e.g., apension fund) but may also be individual investors, brokers or otherswho deal in or trade securities or other instruments. As used herein,the term "user", "trader" or "investor" means that person or entity whowishes to make a trade.

Referring now to the drawings, and initially FIG. 1, there isillustrated a block diagram of the overall architecture of the crossingnetwork according to the present invention. A central matchingcontroller ("CMC") 2 matches buy and sell orders transmitted to the CMCfrom various trader terminals, e.g., 10, 12, 14. The CMC 2 is preferablya supercomputer that can perform matrix calculations at rates ofmultiple gigaflops, such as, for example with present technology, an IBMSP2 or an Intel PARAGON supercomputer. A storage device 4 is coupled tothe CMC 2. The storage device 4 comprises a database for storing buy andsell satisfaction density profiles. In the representative embodiment,buy satisfaction density profiles can be stored in a buy profiledatabase 6 and sell satisfaction density profiles can be stored in asell profile database 8.

Each trader who wished to trade will have access to a trader terminal,such as trader CPU 10, 12, 14. Ideally, the trader terminals 10, 12, 14are high powered personal computers or workstations. The traderterminals 10, 12, 14 are coupled to the CMC 2. Trader terminals may becoupled to the CMC 2 over a wide area network (WAN) and/or over theInternet. Each trader terminal includes one or more input/output devices16, 18, 20 that allow for the entry of satisfaction density profiles andthe display of output, such as matching trades.

Turning now to FIG. 2, there is illustrated an example satisfactiondensity profile 300 for a sell order. (Also shown is an exampleinterface window 21, discussed below, which is used to assist in thecreation/specification of the satisfaction density profile.) In therepresentative embodiment, each security that a trader wishes to traderequires the creation of a satisfaction density profile, such as the oneshown in FIG. 2 at 300. The satisfaction density profile as shown inFIG. 2 at 300 is a two-dimensional grid. Price is represented on thevertical axis and quantity is represented on the horizontal axis. (Theranges and scale of each axis can be set by the trader or automaticallyset by the present invention.) The satisfaction density levels aredescribed by the numbers shown.

The satisfaction density profile characterizes the trader's range ofinterest in the transaction at each (price, size) combination. Thetrader can enter at each grid point on the satisfaction density profilea satisfaction density value, indicating the trader's willingness totrade that size order at that price. Entry of these satisfaction densityvalues can be facilitated by a variety of graphical user interfacetools. In the representative embodiment shown in FIG. 2, eachsatisfaction density value is a number between and including zero andone, with zero representing no satisfaction (i.e., will under nocircumstances trade that quantity at that price) and one representingtotal satisfaction.

Thus, for example, FIG. 2 shows that the trader is fully willing to buy100,000 at $99.50, but under no circumstances is willing to buy the samequantity at $100.125, or any quantity at $101.00. The satisfactiondensity value to buy 120,000 at $100 is 0.17, indicating a limiteddegree of satisfaction. FIG. 2 shows that the trader is more willing tobuy 200,000 at $99.75 then 10,000 at $99.625.

The interface window 21 of FIG. 2 is an example user interface that canbe used by a trader to set parameters when inputting or modifying asatisfaction density profile, such as 300 of FIG. 2. In therepresentative embodiment, the interface window 21 is displayed on anInput/Output device (e.g., 16, 18, 20). The interface window 21 in therepresentative embodiment can be manipulated according to standardgraphical user interface (GUI) commands by a user using, for example, amouse and a keyboard.

A Side indicator 22 allows the trader to set the type of transaction,e.g., buy, sell, sell short etc. A Symbol indicator 24 allows the traderto set the instrument being traded, e.g., for stocks, the ticker symbol;for futures, the futures symbol, etc. A Maximum Quantity indicator 26allows the trader to set the maximum quantity to be traded. A type box45 allows the trader to select a type of order, e.g., limit or market.In FIG. 2, the trader has entered a sell profile to sell a maximumquantity of 1,500,000 IBM shares.

The trader can also set a Time-in-Force indicator 28 that determines forhow long the order will be valid. Examples of valid Time-in-Forcesettings include "good until canceled" (GTC), "good until end of day"(End of Day) and for a set period of time (e.g., minutes).

A Profile Dimensions section 30 (also known as a Surface Descriptionsection) of the interface window 21 allows the trader to define thedimensions of the satisfaction density profile. A Center Price parameter32 is used to set the price that is displayed in the center of priceaxis of the satisfaction density profile. A Price Range parameter 34shows the range for the price on the price axis. A Price Intervalparameter 36 enables the trader to set the price interval (i.e., scale)on the price axis of the satisfaction density profile. For example, asshown in FIG. 2, the center price is set at 100 and the price range at2. Thus, the price axis will vary from a price of 99 to a price of 101(with 100 being in the center) in price increments of one eighth. APrice parameter 37 can be used to set whether the profile is absolute orrelative (e.g., pegged to the bid/ask midpoint or the average price ofthe last match of that security).

A Min Size parameter 38 and a Max Size parameter 40 allows the trader toset the minimum and maximum limits for the quantity axis of thesatisfaction density profile. A Cursor Position segment 42 will displaythe coordinates (price, size) of the position of the cursor as thecursor is moved by the user over the satisfaction density profile beingcreated.

In the representative embodiment, there is a Display section 46 that hastwo buttons, namely, an Update Grid button and a Display Surface button.The Update Button will redraw the satisfaction density profile. TheDisplay Surface button will allow the user to change the way thesatisfaction density profile is displayed, e.g., as a contour plot (asshown in FIGS. 3A to 3D) or a temperature graph (as shown in FIG. 7below).

Contour buttons 43 allow the user to input contour lines (e.g., thethree lines shown on the satisfaction density profile 300), eachrepresenting a satisfaction density value. In FIG. 2, there are threecontour buttons, one each for satisfaction density values of 0, 0.5and 1. In other embodiments, other values can be used for the contourbuttons 43. When a trader selects a contour button 43, the presentinvention enters "draw mode" to allow the user to draw a line on thesatisfaction density profile 300.

A menu bar 51 also allows traders to select commands, in the usual GUIfashion. For example, the menu bar 51 has a file menu (with commandssuch as load profile, save profile, delete profile, reset all profiles),a view profile menu command (also to load a profile), a save profilemenu command (also to save a profile), a cross menu command (to submit aprofile for execution), a results menu command (that displays a dialoguebox listing trades that occurred), a spread menu command (to displaymarket spread information) and a slider menu command (to translateand/or warp the profile values).

In FIG. 3A, there is illustrated an example satisfaction density profilefor a buy order. The satisfaction density profile as shown in FIG. 3A isa contour plot on a two-dimensional grid. Price is represented on thevertical axis and quantity is represented on the horizontal axis. Thesatisfaction density levels are described by the contours shown. In therepresentative embodiment of FIG. 3A, each satisfaction density value isa number between and including zero and one, with zero representing nosatisfaction (i.e., will under no circumstances trade that quantity atthat price) and one representing total satisfaction.

Thus, for example, FIG. 3A shows that the trader would be highlysatisfied to buy 1,500 at $20.50, but under no circumstances is willingto buy any quantity at $24. The satisfaction density value for a buy of3,000 at $20 is 0.6, indicating a more limited degree of satisfaction.FIG. 3A shows that the trader is more willing to buy 2,000 at $21 then4,000 at $21.

FIG. 3B shows an example satisfaction density profile for a selltransaction in the same format as the contour plot in FIG. 3A. Thesatisfaction density profile of FIG. 3B could represent, for example, anagency sell order.

As another example, FIG. 3C shows a satisfaction density profile for asell transaction. FIG. 3C illustrates a "soft" limit order.

As another example, FIG. 3D shows a satisfaction density profile for abuy transaction.

Turning now to FIG. 4, there is illustrated another example interfacewindow 21. It will be appreciated that the interface window 21 can havevarying designs, all within the principles of the present invention.Reference numerals that correspond with those in FIG. 2 relate to itemsthat have the same functionality as described above in FIG. 2. In FIG.4, the trader has entered a buy profile to buy a maximum quantity of50,000 Motorola shares.

Mismatches of grid resolution (e.g., due to different traders usingdifferent settings) is handled by interpolation to a common gridresolution. For example, the CMC 2 could determine the smallest gridresolution used and interpolate all coarser grid resolutions to thatresolution. Alternatively, the CMC 2 could specify a minimum resolution(e.g. 100 shares and 1/8 in price) and interpolate all coarser gridresolutions to the specified minimum resolution.

In the embodiment shown in FIG. 4, a Cursor Type section 44 has a numberof buttons to control the function of the cursor, for example, a setbutton, a more button, a less button, a boundary button and an editbutton. The more and less buttons allow the user to increase or decreasethe satisfaction density level on the satisfaction density profile atthe location of the cursor. In the representative embodiment, theselected satisfaction density value is increased or deceased each timethe mouse button is "clicked." The boundary button allows the user tocreate a boundary of satisfaction values, such as a zero satisfactionboundary, as discussed above at FIG. 2. The edit button allows the userto edit the boundary. The set button allows the user to set asatisfaction density value, so that each time the mouse is "clicked",the set value is placed in the satisfaction density profile at thelocation of the cursor.

In the representative embodiment, there is a Display section 46 that hastwo buttons, namely, an Update button and a Display Surface button. TheUpdate Button will redraw the satisfaction density profile. The DisplaySurface button will allow the user to change the way the satisfactiondensity profile is displayed, e.g., as a contour plot (as shown in FIGS.3A to 3D) or a temperature graph (as shown in FIG. 7 below).

The interface window 21 can also have a quit button 50, a clear button52, a reset button 54 and an apply button 56. The quit button 50 enablesa user to exit from the program that controls the interface window 21.The clear button 52 clears the display of the graph (e.g., the displayof the satisfaction density profile) and all other parameter values,such as, for example, the Min Size parameter 38 and the Max Sizeparameter 40. The reset button 54 "undeletes" the most recent change tothe graph, resetting the state of the graph to the immediately precedingstate. The apply button 56, when selected, causes the satisfactiondensity profile to be submitted for matching. A remove boundary button59, when selected, will remove all boundaries from the satisfactiondensity profile.

A patterns button 58 allows a user to retrieve pre-defined oruser-defined parameterized templates for common types of satisfactiondensity profiles. Upon selection of the patterns button 58, a loadpattern window 60 (as shown in FIG. 5) will be displayed, that allowsthe user to select saved patterns. In the example of FIG. 5, there aretwo saved patterns, namely ibm₋₋ seller₋₋ 1 and ibm₋₋ buyer₋₋ 1, thatstore patterns that enable a user to quickly load and use satisfactiondensity profiles to buy and sell IBM stock.

Certain common order types (e.g., market-maker quotes, limit orders,agency orders) can be expressed as parameterized templates that could beselected directly using the Patterns button 58 and the Load Patternwindow 60. Once the corresponding template pops up on the display, theuser could morph the display to suit the user's preferences as describedbelow.

An even more elegant approach is to use a family of templates thatrepresent two-dimensional basis functions for the surface profile. Thesefunctions can be selected from any of the standard two-dimensionalorthogonal basis sets (e.g., Fourier, Cosine, Walsh-Hadamard, Haartransforms) or from more generalized and/or data specific basisfunctions such as those associated with the Gabor and other wavelettransforms or the Karhunen-Loeve transform. Analogous to their role inimage data compression, the use of such functions as templates in thisapplication would provide a substantially lower dimensionalrepresentation of the buy/sell surface profile, which in turn willcorrespondingly reduce the dimensionality of the coupling matricesneeded to link together the profiles of multiple securities.

As will be appreciated, the entry of buy/sell profiles can befacilitated by a combination of a user-friendly graphical interface anduser-tailorable templates. Those illustrated above are merely examplesof the types of interfaces that could be used to enter satisfactiondensity values. In an alternative embodiment, the GUI would provide aset of tools for quickly entering buy/sell profile "peg point" values atselected price/size grid coordinates, along with an arbitrarily drawnboundary outside of which the profile values would be set to zero at allgrid points. The CMC 2 would then calculate a two-dimensional (ormulti-dimensional) profile that exactly matches the specified points andinterpolates between these values to compute all other grid values. Thisinterpolation can be accomplished by a number of mathematicalalgorithms, including but not limited to triangular tessellations,spline functions, and surface and/or contour plotting programs. The GUIwould also include the ability to "morph" a surface profile created inthis manner, using mouse hook-and-drag type operations or other similarmethods, so that the profile can be altered by the user as desired toachieve a final configuration.

FIG. 6 shows another example of an interface window 21 and a sellsatisfaction density profile 301.

FIG. 7 shows a buy satisfaction density profile displayed as atemperature graph 302. The user can cause any satisfaction densityprofile that has been inputted as a contour plot (or otherrepresentation) to be displayed in the form of a temperature graph byselecting the Display Surface button. In the representative embodiment,each (price, quantity) coordinate is represented by a colored square(e.g., 80), with the color of the square signifying the satisfactiondensity value. For example, in the representative embodiment, asatisfaction density value of 0 is represented by a black square, asatisfaction density value of 1 is represented by a white square, asatisfaction density value of 0.1 is represented by a blue square, asatisfaction density value of 0.5 is represented by a red square, asatisfaction density value of 0.9 is represented by a yellow square, andso on. Using this display, the trader can view the satisfaction densityprofile as a meaningful and colorful graphical display.

As shown in FIGS. 2, 3, 6 and 7, there are many ways and forms forcreating and representing a satisfaction density profile on a computerinterface and for inputting satisfaction density values. It will beappreciated, from a technological point of view, that (prior to thepresent invention) a trader was unable to easily express his degree ofsatisfaction for a transaction at various price and size coordinates.The computer interfaces shown in FIGS. 2, 3, 6 and 7 provide atechnological solution so as to enable a trader to express such degreesof satisfaction.

FIG. 8 is a flow chart representing the overall steps performed inaccordance with the present invention. Traders enter satisfactiondensity profiles, as discussed above, at steps 100 and 102. It will beappreciated that many traders can each enter one or more satisfactiondensity profiles. For convenience, FIG. 8 shows that the buy and sellprofiles are entered at different steps (i.e., steps 100 and 102);however, the same interface (e.g., interface window 21) and terminals10, 12, 14 are used for the input of both buy and sell profiles. Infact, steps 100 and 102 could conceptually be considered to be the samestep, merely with differing data.

In the representative embodiment of the present invention, buysatisfaction density profiles, when ready for matching, are transmittedto the CMC 2 and stored in a buy profile database 6 (step 104). Sellsatisfaction density profiles, when ready for matching, are transmittedto the CMC 2 and stored in a sell profile database 8 (step 106).

The satisfaction density profiles entered at each trader terminal can beelectronically transmitted to the CMC 2 and stored as files in thestorage device 4 of the CMC 2. In the representative embodiment, eachsatisfaction density profile is stored as its own file; the internalstructure of each file is a two dimensional matrix. (If desired, otherdata structures other than files could be used to implement thisconcept.) The buy profile database 6 stores files of buy satisfactiondensity profiles, and the sell profile database 8 stores files of sellsatisfaction density profiles. Additionally, a satisfaction densityprofile may be stored in local memory of a trader terminal as a fileprior to transmission to the CMC 2.

At step 108, the CMC 2 calculates, for each possible buy/sellcombination stored in the buy profile database 6 and sell profiledatabase 8, a mutual satisfaction profile function, which in therepresentative embodiment is a mutual satisfaction cross productprofile. The mutual satisfaction cross product profile represents thepotential for that buy/sell pair mutually to satisfy each other at eachprice and size. By way of example, if there are three buy profiles (A,B, C) and two sell profiles (1, 2), the CMC 2 will calculate six mutualsatisfaction cross product profiles, e.g. A1, A2, B1, B2, C1, C2. Thus,it will be appreciated that the CMC 2 interacts with the files stored inthe storage device 4 to create the mutual satisfaction cross productprofiles. The mutual satisfaction cross product profiles may also bestored in form of files.

At step 110, the CMC 2 ranks each grid element (possible buy/sell pairat a corresponding price and size) of each mutual satisfaction crossproduct profile in order from largest to smallest. The grid elements arethen allocated in the ranked order (step 112), accumulating the priceand size for the buyer and seller of each matched transaction (steps 114and 116). When the maximum size limit for a particular satisfactiondensity profile is reached, all remaining lower ranked grid elementsinvolving that profile are removed from consideration (steps 122 and124). If all feasible (i.e., non-zero mutual satisfaction) crosses havenot been done (step 118), then control returns to step 112. If allfeasible crosses have been completed, then the process is temporarilysuspended until the next order is entered or an existing unmatched orderis canceled or modified (step 120), upon which control returns to step108.

To operate the present invention as a continuous crossing network, thencontrol should return to step 108 whenever a new order is entered or anexisting order canceled or modified.

Price Discovery

When all feasible matches have been performed and the CMC 2 is awaitingthe next profile input (step 120), there will exist a group of unfilledbuy satisfaction density profiles and a group of unfilled sellsatisfaction density profiles, with no overlap between the two groups.These unfilled buy and sell satisfaction density profiles may be storedin the buy profile database 6 and the sell profile database 8respectively.

The two-dimensional price/size region between these groups of unmatchedprofiles, called herein the "spread region," depicts, at each value ofsize, for each instrument, the spread between the highest non-zero buysatisfaction profile price and the lowest non-zero sell satisfactionprofile price. This aggregate of unfilled satisfaction profiles can beregarded as a generalization of the market quotes currently provided byexchanges and market makers, i.e., is a mechanism, if properly utilizedaccording to the present invention, for price discovery. Importantly,proper use of the information represented by spread region according tothe principals of the present invention obviates the need for parasiticpricing inherent in other crossing networks. Moreover, the informationrepresented by the spread region provides a substantially greater pricediscovery across the full range of trade sizes than is contained insingle quotations of best bid and best offering prices and correspondingsizes currently provided by exchanges and market makers.

The present invention can output the spread region as an aggregatedensity profile. The spread region can have an arbitrary shape, anddepends upon the aggregate of unfilled buy and sell satisfaction densityprofiles existing in the system at a given time. The shape of the spreadregion, when represented graphically or mathematically, indicatesmacro-features of the market in a given instrument. For example, aspread region that is narrow at small order sizes and widens at largerorder sizes, indicates that the current market is primarily in small"retail" orders, with no large buy orders and sell orders that are closein price. On the other hand, if the spread region narrows at largesizes, this would indicated the presence of one or more large contraparties who are close in price.

Additional information can be overlayed on the aggregate densityprofile. For example market depth can be indicated by the quantity ofnon-zero satisfaction density values entered at each price/quantity gridpoint over all entered satisfaction density profiles. The CMC 2 createsan aggregate density profile, per instrument, according to theprinciples of the present invention, having grid entries that indicatethe number (or count) of non-zero valued buy or sell satisfactiondensity profiles entries occupying each price/size grid cell. It isnoted that the aggregate density profile does not provide information asto the willingness of any individual participant to trade at aparticular price/quantity combination, but rather, reflects theaggregate of all participants.

A further attribute of an aggregate density profile is market intensity.The grid entries of the aggregate density profile represent the maximumsatisfaction value among those profiles occupying each price/size gridcell. Of course, the display could be modified so that some otherstatistic relating to the satisfaction values is calculated oraggregated and available for output to a trader (e.g., minimum, average,medium, most frequently occurring, etc.).

Accordingly, the present invention can output to traders, for example,at the trader I/O devices 16, 18, 20, information relating to the spreadregion enabling sophisticated price discovery about the market. The kindand quantity of information relating to the spread region, the level ofdetail, and the timing of the output (e.g., immediately or on a delayedbasis) will vary between markets, and could depend upon, for example,the requirements of the market and the expectations of the traders.

FIG. 9a is an example screen output display showing a typical aggregatedensity profile. The vertical axis is price and the horizontal axis isquantity. The black grid entries of the aggregate density profile ofFIG. 9 represent a maximum satisfaction value of zero and the white gridentries represent a maximum satisfaction of 1. The other shades ofcolors represent various values between 0 and 1 occupying eachprice/size grid cell. FIG. 9B is another typical aggregate densityprofile, except that in FIG. 9B the grid entries are represented bynumbers rather than colors. Additional market characterization data isderived by the present invention by computing various statistics basedupon the shape of the spread region. An example is a linear regressionfit to the center points of the price spread versus size. It will beapparent that numerous other representations, statistics and shapefeatures can be derived from the aggregate density profile that wouldfall within the scope of this invention. This information also can beoutput to traders at trader I/O devices 16, 18, 20. The presentinvention allows a sub-set of the above discussed aggregate informationto be made available for output, with the timing of such outputdepending on the circumstance of implementation. For example, thedecision as to how much of this information is made public could bedetermined by market preferences.

Certain aspects of FIG. 8 can be described more precisely inmathematical notation, as follows. This explanation will begin with abatch process description, and then show how this extends directly to acontinuous crossing strategy.

Assume we have M buyers and N sellers in a crossing pool for a givenstock. We define B_(i) (p,s) as the "satisfaction density" of the i-thbuyer for receiving a portion, s, of his fill at price p, where 0≦B_(i)(p,s)≦1. Along with this profile, the buyer will have a maximum sizelimit β_(i). Let S_(k) (p,s) and σ_(k) be the corresponding satisfactiondensity and size limit for the k-th seller. These satisfaction densityprofiles are two-dimensional surfaces over a grid of price and sizecoordinates that characterize the participant's degree of satisfactionin the transaction. A value of zero in any coordinate cell indicates nosatisfaction (i.e., no desire for any portion of the transaction to beaccomplished at the corresponding cell price), while a value of unityindicates full satisfaction. In-between values correspond to limiteddegrees of satisfaction. Mathematically, these values represent "fuzzy"variables that characterize the degree of membership of a particularprice/size transaction in the set of satisfying transactions.

Certain characteristics of the satisfaction density functions can bederived from obvious constraints. For a given value of size, we have:

B_(i) (p₁,s)≧B_(i) (p₂,s) if p_(i) <p₂ (i.e., buyers prefer lowerprices),

B_(i) (p,s) ↑ 1 as p ↓ 0 (full satisfaction as price goes to zero),

B_(i) (p,s) ↓ 0 as p ↑ ∞ (no satisfaction as price goes to infinity),

and similarly,

S_(k) (p₁,s)≧S_(k) (p₂,s) if p₁ >p₂ (i.e., sellers prefer higherprices),

S_(k) (p,s) ↑ 1 as p ↑ ∞ (full satisfaction as price goes to infinity),

S_(k) (p,s) ↓ 0 as p ↓ 0 (no satisfaction as price goes to zero).

For a given price p, there is no similar set of ordinal relationshipswith respect to size. However, there are special cases that typicallywould arise in trading. For example, the satisfaction density of amarket maker at a given price p might be constant for sizes from zero upto 1,000 shares, and then decline rapidly to zero for larger sizes. Thesatisfaction density of an agency broker might be non-zero only forsizes up to the client's order size. The satisfaction density of anaccumulating or divesting investor might exhibit a broad hump in sizecentered at some large value.

We define the mutual satisfaction density between the i-th buyer and thek-th seller to be

    J.sub.ik (p,s)=B.sub.i (p,s)S.sub.k (p,s), i=1, . . . M; j=1, . . . N.

This product lies between zero and unity in value, and provides ameasure of the relative degree to which a given price and size satisfy aparticular pair of buyer and seller. There will be MN such mutualsatisfaction densities for all participants in the batch.

Numerous other alternatives for defining these mutual satisfactiondensities are available. For example, an alternative definition could be

    J.sub.ik (p,s)=min {B.sub.i (p,s), S.sub.k (p,s)}

It will be apparent that other definitions are possible that accomplishthe same objective of characterizing the degree of mutual satisfaction.

The optimization problem is: what sequential allocation of amounts andprices

    (p.sub.ik,a.sub.ik) i=1 . . . M; j=1 . . . N

between the i-th buyer and the k-th seller maximizes the joint mutualsatisfaction over all participants? This is equivalent to maximizingsequentially ##EQU1## subject to the size constraints ##EQU2##

This maximization can be performed as follows:

1. At each price/size value in the grid, compute the MN values of J_(ik)(p,s).

2. Over all price/size grid values, rank the J_(ik) (p,s) from largestto smallest, saving the index values corresponding to both thebuyer/seller pair and the grid coordinates.

3. Allocate price and size, starting with the highest ranked J_(ik)(p,s), and accumulate the amounts for each buyer/seller. When a sizelimit is reached, knock out of the ranked list any remaining entries forthat buyer/seller.

Any ties in the ranking process could be arbitrated by earliest time ofentry or random drawing in step three, in order to be fair to allparticipants. Alternatively, where there is a tie, the CMC 2 couldselect the match that would result in the greatest overall mutualsatisfaction over all possible securities being accomplished. Forexample, the CMC 2 could "look ahead" and determine whether any otherpossible matches depend upon one of the tied possible matches occurring.

The CMC 2 can then aggregate all allocations between each pair of buyerand seller to compute a single size and price for their transaction asfollows: ##EQU3##

The optimization approach discussed above permits one allocation betweena given buyer and seller at a particular price and size, with theallocations over all possible combinations determined sequentially inrank order of mutual satisfaction values. In the limit as the sizeincrement of the satisfaction profile grid goes to zero, there will bean arbitrarily large number of possible allocations within a vanishinglysmall neighborhood of the highest current mutual satisfaction value, allhaving essentially the same mutual satisfaction value (assuming onlycontinuity of the satisfaction profile as a function of the sizevariable within this neighborhood). In this limiting case, the third andfinal step of the allocation process converges mathematically to thefollowing rule:

3a. For the highest mutual satisfaction value, allocate repeated tradesto the corresponding buyer and seller in increments of the correspondingsize coordinate until one or the other participants' maximum size limitwould be exceeded. Then proceed to the next highest mutual satisfactionvalue (which may represent a different buyer/seller pair and/or adifferent price/size coordinate) and repeat this procedure until nofeasible matches remain.

In a system that implements the refinement of step 3a., satisfactiondensity profiles could be represented by analytic functions of the sizecoordinate, and the calculation of the maxima of the mutual satisfactiondensity profiles could be performed by standard analytical and/ornumerical techniques.

This implementation (which may be regarded as a mathematically limitingcase) can be regarded as a generalization of the basic embodiment incases where the size increment remains greater than zero. In thisembodiment, the ranking procedure is used to determine the sequence ofallocations, but at the highest current mutual satisfaction value,multiple allocations (as many as the trader specifies) would bepermitted for the corresponding buyer/seller/price/size, until one orthe other participants' maximum size limit would be exceeded.

In a further embodiment, the user could specify groups of price/sizecells, along with corresponding limits on the number of allocations thatcould be made within each group. As the allocation process proceeds,when one of these limits is reached, the cells in the group becomeineligible for subsequent allocations, and thus are skipped over.

The optimization approach discussed above maximizes sequentially themutual satisfaction at each stage of the allocation process, byassigning allocations based upon the highest remaining mutualsatisfaction value. This approach has the virtue of beingcomputationally tractable and generally yielding allocations with tightspreads in price. However, it does not assure a globally optimumallocation assignment, which may be computationally intractable forproblems of any great size. The following refinement formally pose theoptimization problem in fullest generality, and describes other searchtechniques that can be used to seek solutions.

Define an allocation C to be an arbitrary collection of points (p_(ik)(j), s_(ik) (j)), i ε [1 . . . M]; k ε [1 . . . N], j ε C, taken fromthe MN mutual satisfaction grids, where the index j runs through theentire allocation C and indexes the individual price/size tradecomponents for all buyer/seller pairs. The indexing scheme on j admitsrepeated values at any particular buyer/seller/price/size point(p_(ik),s_(ik)), and thus it includes the variations on the allocationrule described above.

Let C' be the set of all feasible allocations, i.e., those which satisfythe following conditions:

1. For any C ε C',

    J.sub.ik (p.sub.ik (j),s.sub.ik (j))>0 for all j ε C

(i.e., feasible allocations have only non-zero mutual satisfactionvalues), and

2. For any C ε C', the maximum size constraints ##EQU4## are satisfiedfor all buyers and sellers (i.e., feasible allocations do not exceed themaximum trade size desired by any buyer or seller).

The general optimization problem then is: what feasible allocation C εC' maximizes the total mutual satisfaction ##EQU5## over allparticipants, while simultaneously maximizing ##EQU6## the total tradevolume? The objective function for this optimization can in general be anon-linear combination of J and V.

Finding the globally optimum solution to problems of this type generallyrequires an exhaustive compilation of the set C' of feasibleallocations, followed by an exhaustive evaluation of the functions J andV over the entire set C', which, in some cases, may be computationallyintractable. A number of alternative approaches are available forfinding near-optimum solutions, in addition to the approach describedabove. These include stochastic algorithms such as random searchalgorithms, genetic algorithms and evolutionary programming; andmultiple hypothesis tree search and other multi-stage deterministicsearch algorithms. It will be apparent that numerous alternativeoptimization procedures can be applied to this problem, all of themlying within the principles of the present invention.

The present invention also allows a minimum threshold of mutualsatisfaction in the ranking process, below which no allocations aremade. Furthermore, the satisfaction density for one stock can be made afunction of the allocations already made in another stock.

To convert the batch process into a continuous one, each newsatisfaction density entered into the crossing network of the presentinvention is treated as an event that triggers a new round ofcomputation as described above. While the computation requirements toimplement this process in real time for all stocks are significant, theyare well within the capability of modern supercomputers.

The following is a simple example to illustrate the operation of thepresent invention. This example assumes that there are two buy profilesand two sell profiles entered by traders into the system for the tradeof a single stock. The four satisfaction density profiles can berepresented as the following matrices, with price being rows andquantity being columns:

    ______________________________________                                        Buyer #1 Profile                                                                           B1 :=   0     0       0   0                                                           .1    0       0   0                                                           .8    .7      .3  .1                                                          1     .8      .4  .2                                     Buyer #2 Profile                                                                           B2 :=   .1    .1      .1  0                                                           .3    .3      .3  0                                                           .5    .5      .5  0                                                           1     1       1   0                                      Seller #1 Profile                                                                          S1 :=   1     1       1   1                                                           .7    .7      .7  .7                                                          .2    .2      .2  .2                                                          0     0       0   0                                      Seller #2 Profile                                                                          S2 :=   0     0       0   .5                                                          0     0       0   .7                                                          0     0       0   .3                                                          0     0       0   .1                                     ______________________________________                                    

Buyer #1 Profile is represented graphically as a contour plot in FIG.3A. Buyer #2 Profile is represented graphically as a contour plot inFIG. 3D. Seller #1 Profile is represented graphically as a contour plotin FIG. 3C. Seller #2 Profile is represented graphically as a contourplot in FIG. 3B.

Then the four mutual satisfaction cross products produced at step 108are as follows:

    ______________________________________                                        J11 := (B1 · S1)                                                     J11 therefore equals                                                                          0     0         0   0                                                         .07   0         0   0                                                         .16   .14       .06 .02                                                       0     0         0   0                                         J12 := (B1 · S2)                                                     J12 therefore equals                                                                          0     0         0   0                                                         0     0         0   0                                                         0     0         0   .03                                                       0     0         0   .02                                       J21 := (B2 · S1)                                                     J21 therefore equals                                                                          .1    .1        .1  0                                                         .21   .21       .21 0                                                         .1    .1        .1  0                                                         0     .0        0   0                                         J22 := (B2 · S2)                                                     J22 therefore equals                                                                          0     0         0   0                                                         0     0         0   0                                                         0     0         0   0                                                         0     0         0   0                                         ______________________________________                                    

J11 is represented graphically, as a contour plot, in FIG. 10A. J12 isrepresented graphically, as a contour plot, in FIG. 10B. J21 isrepresented graphically, as a contour plot, in FIG. 10C. J22 isrepresented graphically as a blank contour plot (not illustrated).

Ranking each (price, quantity) pair from the above four grids gives thefollowing vector:

    ______________________________________                                        w = (.21, .21, .21, .16, .14, .1, .1, .1, .1, .1, .1,                         .07, .06, .03, .02, .02, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,                     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,                      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)                      ______________________________________                                    

If there are a number of possible trades ranked equally (e.g., there arethree possible trades ranked first above), then the profile with thehighest time priority is chosen, or one is chosen at random or, asexplained above, according to a predetermined scheme to increase overallmutual satisfaction in the matching process.

It will be appreciated that one technological advantage provided by thepresent invention is that a trader's degree of satisfaction to trade ata particular price-quantity combination is expressed in quantitativerather than qualitative terms. For example, one trader's statement that"I am keen to trade 1,000 IBM at $98" has different meanings todifferent traders. In sharp contrast, the present invention, by enablingtraders to express satisfaction according to a single scale (e.g.,numbers between and including zero and one), provides a single, uniformstandard for use by all traders to express their degree of satisfaction.Accordingly, each trader's desires can be easily expressed andunderstood by others, and communicated to and processed by the CMC 2according to a known normative scale.

The present invention can easily handle trades of baskets of securities.In such case, the CMC 2 will functionally link related satisfactiondensity profiles. This linking process can be accomplished in its mostgeneral form, for example, by matrix manipulation of the two profilesutilizing a connection matrix.

In further embodiments, additional variables (or parameters) can beincluded that have an effect on the satisfaction density profile. Forexample, an eligibility variable or an urgency variable (or both) couldbe set by the trader, as explained below. To further elaborate, considerthe following scenarios:

A. A trader has a "buy basket" and a "sell basket" whose executionstatus cannot become too far unbalanced on either side, in dollars orshares or both.

B. A trader wants to become more (or less) aggressive aboutbuying/selling a given security as a function of the execution status ofother securities in the traders' actual/desired basket.

C. Some combination of A. and B. above.

To account for these constraints and relationships, the satisfactiondensity profile of the present invention can be augmented to include twoother variables: eligibility and urgency. In the most general case, eachof these variables can take on a value between and including zero andone. Alternatively, each could have a binary value, zero or one. In oneembodiment, the eligibility variable has a binary value and the urgencyvariable has a value between and including zero and one.

Both the urgency variable and the eligibility variable can be associatedwith the satisfaction density profile as a whole (e.g., one value pervariable per profile) or with each coordinate of the satisfactiondensity profile (e.g., one value for each (price, size) coordinate.)

The eligibility value, when associated with each coordinate, representsthe degree to which that grid point is eligible for matching. In thesimplest case, the eligibility variable is a binary variable that isused to track execution status, i.e., all values of the eligibilityvariable are assigned a value of one at order profile entry, and matchedvalues are set to zero upon matching. Thus, in this embodiment, theeligibility variable could keep track of when matches have occurred. Ina more general case, the eligibility of unmatched values could be heldto zero pending satisfaction of execution status constraints of othersecurities (e.g., as in scenario A. above). Thus, the eligibilityvariable could be used as a coupling between two different stocks.

In a most general case, the eligibility variable could be a "fuzzy"variable, having values between and including zero and one, that wouldallow for "soft" (i.e., continuous-valued) constraints such as "I wantto sell [some | a good amount | a lot] of IBM before I buy [some | much| a large amount] of DEC.

The urgency variable represents the degree to which a particular gridpoint satisfaction value should be either (a) translated in thedirection of a more aggressive price, or (b) warped to a more aggressivesatisfaction value, or both. In the representative embodiment, there isone urgency value per satisfaction density profile (i.e., urgency iscondensed to a single scalar value for each security, applieduniformly), and the value of the urgency variable ranges from zero toone. In the normal case, the urgency variable would have a value ofzero, representing regular trading urgency. Non-zero values of theurgency variable would signify the degree of urgency, with one being themost urgent.

For case (a) immediately above, a non-zero value of the urgency variablewould translate the whole satisfaction density profile up in price (fora buy) or down in price (for a sell). In this instance, the boundariesof the satisfaction density profile would shift accordingly.

In case (b), non-zero values of the urgency variable would exponentiallywarp the satisfaction density values. Assume that the urgency variableis assigned EL value u. Then each (non-zero) satisfaction density valueis raised to the power (1-u). In this case, the boundaries of thesatisfaction density profile are not changed.

Additional embodiments of the present invention enable the incorporationof external variables in the satisfaction density function."Satisfaction" can be thought of as a normalized bivariate utilityfunction. Unlike the subjectiveness inherent in the classical definitionof utility functions, satisfaction in the context of this invention canbe regarded as being objectively normalized as a result of the commonknowledge among market participants of the precise manner in which theirindividual satisfaction density profile values will be used incalculations to determine the outcome of matches. In general,satisfaction can be an arbitrarily complex function of a set ofvariables and/or parameters that, in the aggregate, define theparticipants' current trading goals within the context of the overallmarket. This allows the principles of the present invention to begeneralized to include trading of both fungible and non-fungibleinstruments based upon a specification of satisfaction as a function ofthese external variables.

For example, debt instruments typically are graded on the basis ofcurrent interest rate, coupon rate, time to maturity, and quality ofissuer. A trader can acquire a portfolio of debt holdings thatapproximately match a buyer specification by creating a set ofsatisfaction profiles for individual debt instruments that fall withinsome range of these variables, where the satisfaction value for aparticular instrument at each price and quantity is a function of theabove variables. Higher coupon rates and higher quality of issuer, forexample, generally would result in a higher satisfaction value at agiven price and quantity.

Accordingly, the present invention allows traders to create and inputsatisfaction density profiles, where the satisfaction density profilevalues are a function of or are based upon variables other than priceand quantity.

The present invention can also accommodate allocation based constraints.For certain constraints of interest to traders, the eligibility of a buyprofile or a sell order profile for execution may be a function of thecurrent allocation computed for their satisfaction density profile.Constraints of this type can be accommodated by employing a repeatedstage of all or portions of the allocation computation, as necessary.

For example, step 112 of FIG. 8 can be divided into two stages, thefirst stage determining the eligibility of each profile for execution,and the second stage determining the actual allocation. The sameapproach can be taken for intermediate values of eligibility (i.e.,between 0 and 1), where the value of the eligibility variable iscomputed in the first stage, and the final allocation is based upon thatvalue of eligibility.

The CMC 2 can be coupled to an automated clearing system and/oraccounting system. Orders that are matched can then be automaticallyoutput to such system(s) to assist in "backoffice" procedures.

It is noted that the CMC 2 of the representative embodiment of thepresent invention can be implemented utilizing a logic circuit or acomputer memory comprising encoded computer-readable instructions, suchas a computer program. The functionality of the logic circuit orcomputer memory has been described in detail above. Generally, thepresent invention has practical application as it enables ownership ofinstruments, such as for example stocks and bonds, to be transferred andfacilitates bringing together willing buyers and willing sellers.However, it should be appreciated that the solution posed by the presentinvention could not be manually accomplished by a human. According tothe present invention, satisfaction density profiles can be created bymany traders at trading terminals located in a multitude of variouslocations, and electronically transmitted and stored in a centrallocation for processing. No human could possibly perform thecalculations required to determine what trades are to take place. In thecontinuous the crossing situation, for example, a very large number ofcalculations must take place in real-time whenever a new order isentered or an existing order is canceled or modified, calculations thatno human could possibly perform in the time required. Moreover,anonymity is assured when the CMC 2 determines which orders will besatisfied, which would not be assured if a human attempted to performthe communication and calculation steps of the present system.

Modifications to Accommodate Stock Exchange Rules

Most organized stock exchanges operate with rigid rules as to executionof orders, for example, requiring priority be given to orders exhibitingthe best price, regardless of size or any other consideration (such asmutual satisfaction). The present invention, if desired can beimplemented to comply with such exchange rules. Thus, variations of theprinciples discussed above can be made so that the crossing network willaccommodate such stock exchange rules. Other such variations arepossible within the scope of the invention.

1. Continuous Market Case

When operating in the continuous market mode on an exchange, a newprofile entering the system must "sweep" the stock available at asatisfaction value of "one" and a better price or an equal price (in thecase of time priority) relative to any prospective allocation based onmutual satisfaction.

When the new profile enters the system, the mutual satisfaction crossproducts are calculated with respect to contra profiles, and the rankingprocedure of the basic algorithm is performed. The highest-rankedprice/size cell becomes a tentative first allocation. Before making theallocation, however, the CMC 2 first checks to see if there are anycontra profiles exhibiting a "one" value of satisfaction (a) at a betterprice and lower size, or (b) at an equal price, lower size and havingtime priority, over the contra profile involved in the tentativeallocation. If so, the trades from these profiles are aggregated todetermine the total size available at an equal or better price. Thesetrades get priority for matching with the new profile over the tentativeallocation. The aggregate size may not be equal to the size of thetentative allocation. If the new profile has a satisfaction value ofzero at the smaller size and the corresponding aggregate average price,and/or if the tentative contra party is unwilling to accept the residualamount, then the tentative allocation is invalidated. Should no traderesult after all tentative allocations have been exhausted, the newprofile will be eligible for a retry after subsequent new profiles areexecuted.

This procedure is summarized in FIG. 11. At step 202, the CMC 2 selectsthe next highest mutual satisfaction grid point. The CMC 2 thendetermines at step 204 if any contra satisfaction density profiles existin the system that have a "1" satisfaction at a better price. If so, atstep 206 the CMC 2 aggregates these possible trades to determine thetotal size available at the better price, and these trades get priorityfor matching at step 212. A similar process is performed at steps 208and 210 for trades having equal price but time priority. If theaggregate size is greater or equal to the size of the tentativeallocation (step 212), then the trade is allocated accordingly (step214). Otherwise, at step 216, if the tentative contra party is unwillingto accept the residual amount (step 216), then the tentative allocationis invalidated (step 218). If the tentative contra party is willing toaccept the residual amount, then a trade is allocated accordingly (step214). If no unmatched contra cell exists that has a superior or equalprice, then the trade is allocated to the highest-ranked price/size cell(step 220).

In addition to the above situation, the case may arise where a newprofile does not overlap with any existing profiles, but there areprices where both the new profile and existing contra profiles have"one" satisfaction values, with the existing profiles having thesevalues at lower sizes. In this case, the CMC 2 sweeps the lower-sizeexisting stock to fill any eligible "one" satisfaction values in the newprofile (using price, entry time and size priority, in that order). Thefinal price may be allocated either on a "walking the book" basis, whereeach contra side is filled at the individual prices of each cell, or allcontra cells may be filled at the best price needed to complete thefill.

2. Call Market Cases

There are twelve different cases that must be considered, correspondingto each of the combinations set forth below:

single-price and multi-price calls

no market orders, exactly offsetting market orders, and non-offsettingmarket orders,

non-overlapping limit profiles and overlapping limit profiles.

The following procedures are used in these cases.

Single-Price Calls

Single price calls require that profiles having a better price, at a"one" satisfaction value, relative to the call price be given priority.We define the price deviation of a given profile to be the amount bywhich its best price at any size and at a "one" satisfaction valuedeviates from the call price. Priority is then given to profiles whoseprice deviations are greater than or equal to zero, i.e., that arewilling to improve on the call price at a "one" satisfaction value.Those profiles with a strictly positive price deviation must be filledcompletely in the call, while those with zero price deviation may notnecessarily receive a complete fill. Table 1 lists the procedures to beused under various situations.

                  TABLE 1                                                         ______________________________________                                        Market Order                                                                           Non-Overlapping                                                      Situation                                                                              Limit Profiles  Overlapping Limit Profiles                           ______________________________________                                        None     No-Op           Find the call price that                                                      1) fills all profiles having a                                                strictly positive price devia-                                                tion, in price deivation                                                      priority, and 2) yields the                                                   highest mutal satisfaction-                                                   weighted volume on the                                                        total transaction. Break any                                                  ties by selecting the call                                                    price yielding the largest                                                    total volume, then use                                                        random draw. Fill all                                                         remaining eligible limit                                                      profiles at the call price                                                    in order of mutual satis-                                                     faction and then time                                                         priority.                                            Non-Offsetting                                                                         Form a binary profile with                                                                    Form a binary profile with                                    maximum size equal to the                                                                     maximum size equal to the                                     offset. Slide this profile                                                                    offset, and include it with                                   into the contra limit pro-                                                                    the corresponding buy or                                      files, aggregating trade                                                                      sell limit profile groups at                                  sizes at cells where contra                                                                   first priority. Find the call                                 satisfaction equals one (in                                                                   price that: 1) fills all                                      time priority) until the                                                                      profiles having a strictly                                    offset size is met. Fill all                                                                  positive price deviation                                      market orders and the                                                                         priority, and 2) yields the                                   involved limit orders at that                                                                 highest mutual satisfaction-                                  maximum or minimum                                                                            weighted volume on the                                        price.          total transaction. Fill the                                                   market profile and all                                                        eligible limit profiles at                                                    that price. Fill all remaining                                                eligible limit profiles at the                                                call price in order of mutual                                                 satisfaction and then time                                                    priority.                                            Exactly  Form binary buy and sell                                                                      Use same price as deter-                             Offsetting                                                                             profiles with maximum size                                                                    mined in the no market                                        equal to the market order                                                                     order case to fill the                                        aggregates. Perform the                                                                       offsetting market orders.                                     above procedure for each                                                      profile against contra buy/                                                   sell limit profiles. Fill all                                                 market orders at the                                                          average of the two prices                                                     determined by this pro-                                                       cedure.                                                              ______________________________________                                    

Multi-Price Calls

The multi-price call allows for different prices, so priority isdetermined by mutual satisfaction, as in the basic algorithm discussedabove. Alternatively, one may employ the continuous market sweepalgorithm described above as an additional sub-procedure on the basicalgorithm.

Table 2 lists the procedures to be used under various situations.

                  TABLE 2                                                         ______________________________________                                        Market Order                                                                           Non-Overlapping                                                      Situation                                                                              Limit Profiles  Overlapping Limit Profiles                           ______________________________________                                        None     No-Op           Use the basic algorithm,                                                      with the option of using the                                                  continuous market sweep                                                       modification.                                        Non-Offsetting                                                                         Form a binary profile with                                                                    Form a binary profile with                                    maximum size equal to the                                                                     maximum size equal to the                                     offset. Slide into the contra                                                                 offset, and include with the                                  limit profiles, aggregating                                                                   corresponding buy or sell                                     size where contra satisfac-                                                                   limit profile groups at top                                   tion equals one (in time                                                                      priority. Execute the basic                                   priority) until the offset                                                                    algorithm (optionally with                                    size is met. Fill all market                                                                  the continuous market                                         orders at the volume-                                                                         sweep mod), sliding the                                       weighted average price                                                                        market profile as necessary                                   (VWAP) over the aggre-                                                                        to find the price that just                                   gated cells, and fill the                                                                     fills the market profile                                      involved limit orders at                                                                      against contras with satis-                                   their corresponding cell                                                                      faction equal to one. Fill                                    prices.         all market orders at the                                                      resulting VWAP. Limit                                                         orders are filled at whatever                                                 outcome results from the                                                      basic algorithm.                                     Exactly  Form binary buy and sell                                                                      Use the basic algorithm                              Offsetting                                                                             profiles with maximum size                                                                    (optionally with the con-                                     equal to the market order                                                                     tinuous market sweep mod)                                     aggregates. Perform the                                                                       to cross the overlapping                                      above procedure for each                                                                      limit profiles. Then                                          profile against contra buy/                                                                   calculate the MSVWAP                                          sell limit profiles. Fill                                                                     (mutual satisfaction-                                         all market orders at the                                                                      volume weighted average                                       average of the two prices                                                                     price) from the results,                                      determined by this pro-                                                                       and fill the offsetting                                       cedure.         market orders at this                                                         price.                                               ______________________________________                                    

Non-Security Industry Applications

It will be appreciated that the present invention has many non-securityindustry applications. For example, the present invention can be used totrade in computer chips, arrange dates for a dating service (e.g.,matching two people for a date, based upon a satisfaction profilerecording desirability of various features of a possible date), to tradeconcert and other event tickets, to match prospective employers andemployees, to trade in natural gas, and to sell airline and other traveltickets.

For example, when used to trade in airline tickets, the buyers would becustomers who are seeking seats on a flight and the sellers would be,for example, airlines, travel agents, tour companies and travelwholesalers. The satisfaction density profile in this instance is atwo-dimensional grid, with the vertical axis representing price and thehorizontal axis representing time of flight (e.g., date of travel andtime in one hour segments.) Each profile would represent a particularflight route, e.g., New York to Denver; Los Angeles to Atlanta, etc.Thus, for example, a customer seeking a flight from Boston to Torontowould enter on a buy satisfaction density profile for "Boston-Toronto"the degree of satisfaction to travel at each price at each time. Forexample, a traveller may be prepared to pay $50 more to travel on Fridayevening rather than on Saturday morning, but under no circumstances isprepared to fly on a Sunday or for more than $250. The traveller wouldtravel at any time for $75 or less. Each airline, for example, wouldenter sell profiles representing the willingness to sell seats at eachprice at each time. Moreover, in this embodiment, other dimensions couldbe added to the satisfaction density profile, e.g., airline preference(a customer may pay more to travel on a favorite airline), number ofstop-overs, etc. Further, there could be linking across "instruments",e.g., rail transportation could be included in the matching process--acustomer may be 75% satisfied to travel by train from New York to Bostonfor $50 on Monday morning, 40% satisfied to travel by train for $100 onMonday morning, 0% satisfied to travel by train for $125 at any time,85% satisfied to travel by airplane for $200 on Monday afternoon, etc.

The matching process can take place in real time or at predeterminedtime intervals, e.g., every day or every hour.

Results of the matching process can be returned to the terminal at whichthe buyers and the sellers enter their satisfaction density profiles, orby other known communication means.

The above described embodiments are merely illustrative of theprinciples of the present invention. Other embodiments of the presentinvention will be apparent to those skilled in the art without departingfrom the spirit and scope of the present invention.

What is claimed is:
 1. A computer-implemented crossing network thatmatches orders for instruments where each order is represented by asatisfaction density profile, the crossing network comprising:aplurality of trader terminals for entering orders in the form of asatisfaction density profile that represents a degree of satisfaction totrade an instrument at a plurality of (price, quantity) combinations,each satisfaction density profile representing either a buy order or asell order for the instrument; and a matching controller computercoupled to each one of the plurality of trader terminals over acommunications network and receiving each satisfaction density profileentered at each one of the plurality of trader terminals, each receivedsatisfaction density profile stored at the matching controller computerin a database as a file, the matching controller computer interactingwith each file by pairing each satisfaction density profile representinga buy order with each satisfaction density profile representing a sellorder, and thereafter calculating for each satisfaction density profilepair a mutual satisfaction function, each mutual satisfaction functionincluding a plurality of (price, quantity) combinations representing adegree of mutual satisfaction for trading said quantity at said price,and thereafter ranking according to the degree of mutual satisfactionevery (price, quantity) combination of every mutual satisfactionfunction, and matching, in accordance with the ranking, buy orders withsell orders.
 2. A crossing network that matches orders for a pluralityof instruments based upon a satisfaction and size profile, the crossingnetwork comprising:a plurality of trader terminals for entering an orderfor an instrument in the form of a satisfaction density profile thatrepresents a degree of satisfaction to trade the instrument at aplurality of (price, quantity) combinations, each satisfaction densityprofile representing either a buy order or a sell order for theinstrument; and a matching controller computer coupled to each one ofthe plurality of trader terminals over a communications network andreceiving as input each satisfaction density profile entered at each oneof the plurality of trader terminals, the matching controller computercomprising:means for pairing each satisfaction density profilerepresenting a buy order with each satisfaction density profilerepresenting a sell order, means for calculating for each satisfactiondensity profile pair a mutual satisfaction function, each mutualsatisfaction function including a plurality of (price, quantity)combinations representing a degree of mutual satisfaction for tradingsaid quantity at said price, means for ranking according to the degreeof mutual satisfaction every (price, quantity) combination of everymutual satisfaction function, and means for matching, in accordance withthe ranking, buy orders with sell orders, wherein the instrumentincludes computer chips.
 3. A crossing network that matches orders for aplurality of instruments based upon a satisfaction and size profile, thecrossing network comprising:a plurality of trader terminals for enteringan order for an instrument in the form of a satisfaction density profilethat represents a degree of satisfaction to trade the instrument at aplurality of (price, quantity) combinations, each satisfaction densityprofile representing either a buy order or a sell order for theinstrument; and a matching controller computer coupled to each one ofthe plurality of trader terminals over a communications network andreceiving as input each satisfaction density profile entered at each oneof the plurality of trader terminals, the matching controller computercomprising:means for pairing each satisfaction density profilerepresenting a buy order with each satisfaction density profilerepresenting a sell order, means for calculating for each satisfactiondensity profile pair a mutual satisfaction function, each mutualsatisfaction function including a plurality of (price, quantity)combinations representing a degree of mutual satisfaction for tradingsaid quantity at said price, means for ranking according to the degreeof mutual satisfaction every (price, quantity) combination of everymutual satisfaction function, and means for matching, in accordance withthe ranking, buy orders with sell orders, wherein the instrumentincludes concert tickets.
 4. A crossing network that matches buy andsell orders based upon a satisfaction and quantity profile, the crossingnetwork comprising:a plurality of trader terminals for entering an orderfor an instrument in the form of a satisfaction density profile thatrepresents a decree of satisfaction to trade the instrument at aplurality of (price, quantity) combinations, each order being either abuy order or a sell order for the instrument; and a matching controllercomputer coupled to each one of the plurality of trader terminals over acommunications network and adapted to receive as input satisfactiondensity profiles entered at each one of the plurality of traderterminals, the matching controller computer pairing each satisfactiondensity profile representing a buy order with each satisfaction densityprofile representing a sell order, and calculating for each satisfactiondensity profile pair a mutual satisfaction cross product representing adegree of satisfaction to which the satisfaction density profiles in thesatisfaction density profile pair satisfy each other, and ranking each(price, quantity) combination of each mutual satisfaction cross productin an order, the matching controller computer thereafter matching buyorders and sell orders in accordance with the ranked order, wherein thesatisfaction density profile is a two-dimensional graph having a priceaxis and a quantity axis, and the matching controlling further comprisesmeans for storing each satisfaction density profile as a file in adatabase.
 5. A crossing network that matches orders for instrumentswhere the orders are represented by a satisfaction density profile, thecrossing network comprising:a plurality of terminals for entering ordersin the form of a satisfaction density profile that represents a degreeof satisfaction to trade an instrument at a plurality of (price,quantity) combinations, each satisfaction density profile representingeither a buy order or a sell order for the instrument; and a matchingcontroller computer coupled to each one of the plurality of terminalsover a communications network and receiving as input each satisfactiondensity profile entered at each one of the plurality of terminals, thematching controller computer matching, where possible, satisfactiondensity profiles representing buy orders with satisfaction densityprofiles representing sell orders, the matching controller computeraggregating information from each entered satisfaction density profileto obtain an aggregate density profile, wherein the aggregate densityprofile is a market depth profile representing quantities of non-zero(price, quantity) combinations entered at each (price, quantity)coordinate for all satisfaction density profiles relating to apredetermined instrument.
 6. A crossing network that matches orders forinstruments where the orders are represented by a satisfaction densityprofile, the crossing network comprising:a plurality of terminals forentering orders in the form of a satisfaction density profile thatrepresents a degree of satisfaction to trade an instrument at aplurality of (price, quantity) combinations, each satisfaction densityprofile representing either a buy order or a sell order for theinstrument; and a matching controller computer coupled to each one ofthe plurality of terminals over a communications network and receivingas input each satisfaction density profile entered at each one of theplurality of terminals, the matching controller computer matching, wherepossible, satisfaction density profiles representing buy orders withsatisfaction density profiles representing sell orders, the matchingcontroller computer aggregating information from each enteredsatisfaction density profile to obtain an aggregate density profile,wherein each satisfaction density profile is stored in a file at thematching controller computer.
 7. A computer-implemented crossing networkto match orders, each order represented as either a buy satisfactiondensity profile or a sell satisfaction density profile and specifying adegree of satisfaction to trade at a plurality of (price, quantity)combinations.
 8. For use in a computer-implemented crossing network, atrading terminal to input orders, each order represented as either a buysatisfaction density profile or a sell satisfaction density profile andspecifying a degree of satisfaction to trade at a plurality of (price,quantity) combinations.
 9. A trading network to match desires of buyersand sellers of airline tickets, the trading network comprising:aplurality of terminals for entering an order for an airline ticket inthe form of a satisfaction density profile that represents a degree ofsatisfaction to trade the instrument at a plurality of (price, time ofdeparture) combinations, each order being either a buy order or a sellorder for the airline ticket; and a matching controller computer coupledto each one of the plurality of terminals over a communications networkand adapted to receive as input satisfaction density profiles entered ateach one of the plurality of terminals, the matching controller computerpairing each satisfaction density profile representing a buy order witheach satisfaction density profile representing a sell order, andcalculating for each satisfaction density profile pair a mutualsatisfaction cross product representing a degree of satisfaction towhich the satisfaction density profiles in the satisfaction densityprofile pair satisfy each other, and ranking each (price, time ofdeparture) combination of each mutual satisfaction cross product in anorder, the matching controller computer thereafter matching buy ordersand sell orders in accordance with the ranked order.
 10. The tradingnetwork of claim 9 wherein the matching controller further comprisesmeans for reporting to each terminal the results of the matching.
 11. Acomputer-implemented matching network that matches orders for traveltickets where each order is represented by a satisfaction densityprofile, the matching network comprising:a plurality of terminals forentering orders in the form of a satisfaction density profile thatrepresents a degree of satisfaction to trade a travel ticket at aplurality of (price, time of departure) combinations, each satisfactiondensity profile representing either a buy order or a sell order for thetravel ticket; and a matching controller computer coupled to each one ofthe plurality of terminals over a communications network and receivingeach satisfaction density profile entered at each one of the pluralityof terminals, each received satisfaction density profile stored at thematching controller computer in a database as a file, the matchingcontroller computer interacting with each file by pairing eachsatisfaction density profile representing a buy order with eachsatisfaction density profile representing a sell order, and thereaftercalculating for each satisfaction density profile pair a mutualsatisfaction function, each mutual satisfaction function including aplurality of (price, time of departure) combinations representing adegree of mutual satisfaction for trading said travel ticket at saidprice and time of departure combination, and thereafter rankingaccording to the degree of mutual satisfaction every (price, time ofdeparture) combination of every mutual satisfaction function, andmatching, in accordance with the ranking, buy orders with sell orders.12. The matching network of claim 11 wherein the matching controllercomputer further comprises means for selecting between (price, time ofdeparture) (combinations having the same ranking.
 13. The crossingnetwork of claim 11 wherein the matching controller computer matchesorders at regular time intervals.
 14. A method for matching orders for aplurality of instruments based upon a satisfaction and size profile, themethod comprising the steps of:entering an order for an instrument inthe form of a satisfaction density profile that represents a degree ofsatisfaction to trade the instrument at a plurality of (price, quantity)combinations, each satisfaction density profile representing either abuy order or a sell order for the instrument; transmitting eachsatisfaction density profile to a host computer; at the host computer,pairing each satisfaction density profile representing a buy order witheach satisfaction density profile representing a sell order; at the hostcomputer, calculating for each satisfaction density profile pair amutual satisfaction cross product, each mutual satisfaction crossproduct including a plurality of (price, quantity) combinationsrepresenting a degree of mutual satisfaction for trading said quantityat said price; at the host computer, ranking according to the degree ofmutual satisfaction every (price, quantity) combination of every mutualsatisfaction cross product; and at the host computer, matching, inaccordance with the ranking, buy orders with sell orders.
 15. A methodfor matching orders for a plurality of instruments based upon asatisfaction and size profile, the method comprising the stepsof:receiving a plurality of orders for a plurality of instruments, eachorder received in the form of a satisfaction density profile thatrepresents a degree of satisfaction to trade the instrument at aplurality of (price, quantity) combinations, each satisfaction densityprofile representing either a buy order or a sell order for theinstrument; pairing each satisfaction density profile representing a buyorder with each satisfaction density profile representing a sell order;calculating for each satisfaction density profile pair a mutualsatisfaction function, each mutual satisfaction function including aplurality of (price, quantity) combinations representing a degree ofmutual satisfaction for trading said quantity at said price; rankingaccording to the degree of mutual satisfaction every (price, quantity)combination of every mutual satisfaction function; matching, inaccordance with the ranking, buy orders with sell orders.
 16. The methodof claim 15 wherein the step of receiving further comprises the step ofstoring each received satisfaction density profile in a database as afile.
 17. The method of claim 16 wherein the step of pairing furthercomprises interacting with the files stored in the database.
 18. Themethod of claim 15 wherein the step of receiving further comprises thestep of electronically receiving each order in the form of asatisfaction density profile.
 19. A method for matching orders for aplurality of instruments based upon a satisfaction and size profile, themethod comprising the steps of:receiving a plurality of orders as asatisfaction density profile, each satisfaction density profilerepresenting a degree of satisfaction to trade an instrument at aplurality of (price, quantity) combinations and representing either abuy order or a sell order for the instrument; pairing each satisfactiondensity profile representing a sell order with each satisfaction densityprofile representing a buy order; calculating for each satisfactiondensity profile pair a mutual satisfaction function, each mutualsatisfaction function including a plurality of (price, quantity)combinations representing a degree of mutual satisfaction for tradingsaid quantity at said price; ranking according to the degree of mutualsatisfaction every (price, quantity) combination of every mutualsatisfaction function; where possible, matching in accordance with theranking buy orders with sell orders; and comparing unmatchedsatisfaction density profiles representing buy orders for one or morepredetermined instruments with unmatched satisfaction density profilesrepresenting sell orders for corresponding one or more predeterminedinstruments to obtain spread information for each one or morepredetermined instruments.
 20. The method of claim 19 further comprisingthe step of outputting the spread information.
 21. A method for matchingorders for a plurality of instruments based upon a satisfaction and sizeprofile, the method comprising the steps of:receiving a plurality oforders as a satisfaction density profile, each satisfaction densityprofile representing a degree of satisfaction to trade an instrument ata plurality of (price, quantity) combinations and representing either abuy order or a sell order for the instrument; aggregating informationfrom each entered satisfaction density profile to obtain an aggregatedensity profile; outputting the aggregate density profile to provideprice information to users; pairing each satisfaction density profilerepresenting a sell order with each satisfaction density profilerepresenting a buy order; calculating for each satisfaction densityprofile pair a mutual satisfaction function, each mutual satisfactionfunction including a plurality of (price, quantity) combinationsrepresenting a degree of mutual satisfaction for trading said quantityat said price; ranking according to the degree of mutual satisfactionevery (price, quantity) combination of every mutual satisfactionfunction; and matching, in accordance with the ranking, buy orders withsell orders.
 22. The method of claim 21 wherein the aggregate densityprofile is a market depth profile representing quantities of non-zero(price, quantity) combinations for all received satisfaction densityprofiles relating to a predetermined instrument.
 23. A method fortrading a plurality of instruments based upon a satisfaction densityprofile, the method comprising the steps of:creating an order for aninstrument in the form of a satisfaction density profile that representsa degree of satisfaction to trade the instrument at a plurality of(price, quantity) combinations, each satisfaction density profilerepresenting either a buy order or a sell order for the instrument;causing the order to be communicated to a matching controller computerthat matches orders so that an outcome of the matching process in termsof individual allocations is a maximization of mutual satisfaction forall parties who submit orders; and receiving from the matchingcontroller computer an indication of matched trades.
 24. The method ofclaim 23 wherein the step of creating comprises entering thesatisfaction density profile on a two-dimensional graph having a priceaxis and a quantity axis.
 25. The method of claim 23 wherein the step ofcreating comprises utilizing factors other than price and size todetermine the degree of satisfaction at each (price, quantity)combination.
 26. A method for matching orders for a plurality ofinstruments based upon a satisfaction density profile by giving priorityto orders exhibiting a best price, the method comprising the stepsof:receiving a plurality of orders as a set of satisfaction densityprofiles, each satisfaction density profile representing a degree ofsatisfaction to trade an instrument at a plurality of (price, quantity)combinations and representing either a buy order or a sell order for theinstrument; pairing each satisfaction density profile representing asell order with each satisfaction density profile representing a buyorder; calculating for each satisfaction density profile pair a mutualsatisfaction function, each mutual satisfaction function including aplurality of (price, quantity) combinations representing a degree ofmutual satisfaction for trading said quantity at said price; rankingaccording to the degree of mutual satisfaction every (price, quantity)combination of every mutual satisfaction function; matching inaccordance with the ranking buy orders with sell orders; and allocatingtrades first to unmatched satisfaction density profiles comprising acomplete satisfaction indication at a better price than the matched buyorders and sell orders, and then in accordance with the ranking.
 27. Themethod of claim 26 further comprising the steps of:comparing anyunmatched satisfaction density profiles representing buy orders for oneor more predetermined instruments with unmatched satisfaction densityprofiles representing sell orders for corresponding one or morepredetermined instruments to obtain spread information for each one ormore predetermined instruments; and outputting the spread information toprovide users with generalized price information.
 28. A method formatching orders for a plurality of instruments based upon a satisfactiondensity profile by giving priority to orders having time priority, themethod comprising the steps of:receiving a plurality of orders, eachorder represented as a satisfaction density profile, each satisfactiondensity profile representing a degree of satisfaction to trade aninstrument at a plurality of (price, quantity) combinations andrepresenting either a buy order or a sell order for the instrument;pairing each satisfaction density profile representing a sell order witheach satisfaction density profile representing a buy order; calculatingfor each satisfaction density profile pair a mutual satisfactionfunction, each mutual satisfaction function including a plurality of(price, quantity) combinations representing a degree of mutualsatisfaction for trading said quantity at said price; ranking accordingto the degree of mutual satisfaction every (price, quantity) combinationof every mutual satisfaction function; matching in accordance with theranking buy orders with sell orders; and allocating trades first tounmatched satisfaction density profiles comprising a completesatisfaction indication at an equal price to the matched buy orders andsell orders if said unmatched orders have time priority, and then inaccordance with the ranking.
 29. The method of claim 28 furthercomprising the steps of:comparing any unmatched satisfaction densityprofiles representing buy orders for one or more predeterminedinstruments with unmatched satisfaction density profiles representingsell orders for corresponding one or more predetermined instruments toobtain spread information for each one or more predeterminedinstruments; and outputting the spread information to provide users withgeneralized price information.
 30. The method of claim 28 wherein thestep of receiving further comprises the step of storing each receivedsatisfaction density profile in a database as a file.
 31. The method ofclaim 30 wherein the step of pairing further comprises interacting withthe files stored in the database.
 32. The method of claim 28 wherein thestep of receiving further comprises the step of electronically receivingeach order in the form of a satisfaction density profile.
 33. A methodfor trading a plurality of instruments based upon a satisfaction andsize profile, the method comprising the steps of:entering an order foran instrument in the form of a satisfaction density profile thatrepresents a degree of satisfaction to trade the instrument at aplurality of (price, quantity) combinations, each satisfaction densityprofile representing either a buy order or a sell order for theinstrument; transmitting each satisfaction density profile to a hostcomputer that matches orders as represented by satisfaction densityprofiles such that an outcome of the matching process in terms ofaverage price and size of fill is a maximization of mutual satisfactionfor all parties; and receiving from the host computer an indication ofmatched trades.
 34. The method of claim 33 wherein the step of enteringcomprises entering the satisfaction density profile on a two-dimensionalgraph having a price axis and a quantity axis.
 35. The method of claim33 wherein the step of entering comprises entering the satisfactiondensity profile as a contour graph.
 36. The method of claim 33 whereinthe step of entering comprises displaying the satisfaction densityprofile as a temperature grid.
 37. The method of claim 33 wherein thestep of entering further comprises entering a satisfaction density valuefor each (price, quantity) combination in the satisfaction densityprofile.
 38. The method of claim 33 wherein the step of entering furthercomprises the step of combining a plurality of satisfaction densityprofiles.
 39. The method of claim 33 wherein the step of enteringfurther comprises the step of linking related satisfaction densityprofiles.
 40. The method of claim 33 wherein the step of transmittingfurther comprises the step of storing and transmitting each satisfactiondensity profile as a file.
 41. A method for trading airline ticketscomprising the steps of:entering an order for an airline ticket in theform of a satisfaction density profile that represents a degree ofsatisfaction to trade the airline ticket at a plurality of (price, timeof departure) combinations, each satisfaction density profilerepresenting either a buy order or a sell order for the airline ticket;transmitting each satisfaction density profile to a host computer thatmatches orders as represented by satisfaction density profiles such thatan outcome of the matching process in terms of price and time ofdeparture is a maximization of mutual satisfaction for all parties; andreceiving from the host computer an indication of matched orders.